Docker
什麼是DOCKER ?
一個應用在打包,分發,部署的平台
也可以理解為一個超輕量級虛擬機
打包,分發,部屬是什麼?
打包:把軟件所需要的依賴,第三方庫一起變成一個安裝包
分發:將安裝包上傳到鏡像倉庫,其他人可以非常方便的模擬和安裝
部屬:拿著安裝包就可以使用命令運行應用,而且會自動模擬和安裝包一模一樣的運行環境
DOCKER安裝
開啟wsl中模擬的ubuntu(以unix為基礎的系統不用此步驟)
輸入 sudo snap install docker 安裝docker
docker --version 查看是否安裝完成
初探Docker
輸入 sudo docker run --rm -it ubuntu /bin/bash
- sudo 使用管理者身分
- docker run 運行docker 容器,此時會發現docker自動抓取image
--rm
docker run 中的flag,代表當結束運行的時候會刪除資料-it
讓容器在前台運行- ubuntu /bin/bash 代表要運行的docker container
Why docker
- 環境問題
- 方便
製作自己的image
- 使用nodeJS編寫間單http服務
var http = require('http')
http.createServer(function(req,res){
res.writeHead(200,{'Content-type':'text/plain'});
res.end('Hello world\n')
}).listen(8089)
console.log("Server running at http://127.0.0.1/8089")
- 編寫Dockerfile
FROM node:alpine
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY . .
CMD [ "node", "main.js" ]
Docker Build & Run
docker build -t hellohttp .
docker run -p 3000:8089 -d hellohttp